/**
 * Created whit IntelliJ IDEA.
 * Description：
 * User：ZHONGCHEN
 * Date:2022-03-05
 * Time:10:42
 */
/**
 * 521. 最长特殊序列 Ⅰ
 * 给你两个字符串 a 和 b，请返回 这两个字符串中 最长的特殊序列  。如果不存在，则返回 -1 。
 *
 * 「最长特殊序列」 定义如下：该序列为 某字符串独有的最长子序列（即不能是其他字符串的子序列） 。
 *
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode-cn.com/problems/longest-uncommon-subsequence-i
 * 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。*/
public class TestDemo {
    public static void main(String[] args) {
        System.out.println(findLUSlength("aaa","bbb"));
    }
    //注意题目中的独有两个字，
    //- s1 = 'ab',s2 = 'a',因为ab是s1独有，所以最长子序列为ab，
    //- s1 = 'ab', s2 = 'ab', 因为ab是两个串都有，ab排除，a也是两个串都有，排除，b也是两个串都有，排除。所以最长特殊序列不存在，返回-1
    //- 通过以上分析，我们可以得出结论，如果：两个串相等（不仅长度相等，内容也相等），那么他们的最长特殊序列不存在。返回-1
    //- 如果两个串长度不一样，那么长的串   永远也不可能是   短串的子序列，即len(s1) > len(s2),则最长特殊序列为s1,返回长度大的数
    public static int findLUSlength(String a, String b) {
        if (a.length() == b.length()) {
           if (a.equals(b)){
               return -1;
           }
           return a.length();
        }
        return Math.max(a.length(), b.length());
    }
}
